package generic;

/**test6
 * 无界通配符   Test6
 * “?”表示类型通配符，用于代替具体的类型。它只能在“<>”中使用。可以解决当具体类 型不确定的问题。
 * public void showFlag(Generic<?> generic){ }
 *
 * 统配符的上限限定
 * 上限限定表示通配符的类型是 T 类以及 T 类的子类或者 T 接口以及 T 接口的子接口。 该方式同样适用于与泛型的上限限定。
 * public void showFlag(Generic<? extends Number> generic){ }
 *
 * 通配符的下限限定 下限限定表示通配符的类型是 T 类以及 T 类的父类或者 T 接口以及 T 接口的父接口。
 * 注意：该方法不适用泛型类
 * public void showFlag(Generic<? super Integer> generic){ }
 */
public class ShowMsg {
    public void showFlag1(Generic<?> generic){
        System.out.println(generic.getFlag());
    }
    public void showFlag2(Generic<? extends Number> generic){
        System.out.println(generic.getFlag());
    }
    public void showFlag3(Generic<? super Integer> generic){
        System.out.println(generic.getFlag());
    }
}
